↳ ITRS
↳ ITRStoIDPProof
z
round(x) → +@z(x, 1@z)
Cond_f(TRUE, x, y) → f(x, round(x))
round(x) → x
f(x, y) → Cond_f(&&(>=@z(x, 1@z), =@z(y, -@z(x, 1@z))), x, y)
round(x0)
Cond_f(TRUE, x0, x1)
f(x0, x1)
↳ ITRS
↳ ITRStoIDPProof
↳ IDP
↳ UsableRulesProof
z
round(x) → +@z(x, 1@z)
Cond_f(TRUE, x, y) → f(x, round(x))
round(x) → x
f(x, y) → Cond_f(&&(>=@z(x, 1@z), =@z(y, -@z(x, 1@z))), x, y)
(0) -> (1), if ((round(x[0]) →* y[1])∧(x[0] →* x[1]))
(1) -> (0), if ((x[1] →* x[0])∧(y[1] →* y[0])∧(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))) →* TRUE))
(1) -> (2), if ((x[1] →* x[2])∧(y[1] →* y[2])∧(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))) →* TRUE))
round(x0)
Cond_f(TRUE, x0, x1)
f(x0, x1)
↳ ITRS
↳ ITRStoIDPProof
↳ IDP
↳ UsableRulesProof
↳ IDP
↳ IDependencyGraphProof
z
round(x) → +@z(x, 1@z)
round(x) → x
(0) -> (1), if ((round(x[0]) →* y[1])∧(x[0] →* x[1]))
(1) -> (0), if ((x[1] →* x[0])∧(y[1] →* y[0])∧(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))) →* TRUE))
(1) -> (2), if ((x[1] →* x[2])∧(y[1] →* y[2])∧(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))) →* TRUE))
round(x0)
Cond_f(TRUE, x0, x1)
f(x0, x1)
↳ ITRS
↳ ITRStoIDPProof
↳ IDP
↳ UsableRulesProof
↳ IDP
↳ IDependencyGraphProof
↳ IDP
↳ IDPNonInfProof
z
round(x) → +@z(x, 1@z)
round(x) → x
(1) -> (0), if ((x[1] →* x[0])∧(y[1] →* y[0])∧(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))) →* TRUE))
(0) -> (1), if ((round(x[0]) →* y[1])∧(x[0] →* x[1]))
round(x0)
Cond_f(TRUE, x0, x1)
f(x0, x1)
(1) (F(x[1], y[1])≥NonInfC∧F(x[1], y[1])≥COND_F(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))), x[1], y[1])∧(UIncreasing(COND_F(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))), x[1], y[1])), ≥))
(2) ((UIncreasing(COND_F(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))), x[1], y[1])), ≥)∧0 ≥ 0∧0 ≥ 0)
(3) ((UIncreasing(COND_F(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))), x[1], y[1])), ≥)∧0 ≥ 0∧0 ≥ 0)
(4) (0 ≥ 0∧(UIncreasing(COND_F(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))), x[1], y[1])), ≥)∧0 ≥ 0)
(5) (0 = 0∧0 = 0∧0 = 0∧(UIncreasing(COND_F(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))), x[1], y[1])), ≥)∧0 ≥ 0∧0 = 0∧0 ≥ 0)
(6) (&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z)))=TRUE∧round(x[0])=y[1]1∧x[0]=x[1]1∧y[1]=y[0]∧x[1]=x[0] ⇒ COND_F(TRUE, x[0], y[0])≥NonInfC∧COND_F(TRUE, x[0], y[0])≥F(x[0], round(x[0]))∧(UIncreasing(F(x[0], round(x[0]))), ≥))
(7) (>=@z(x[1], 1@z)=TRUE∧>=@z(y[1], -@z(x[1], 1@z))=TRUE∧<=@z(y[1], -@z(x[1], 1@z))=TRUE ⇒ COND_F(TRUE, x[1], y[1])≥NonInfC∧COND_F(TRUE, x[1], y[1])≥F(x[1], round(x[1]))∧(UIncreasing(F(x[0], round(x[0]))), ≥))
(8) (x[1] + -1 ≥ 0∧1 + y[1] + (-1)x[1] ≥ 0∧x[1] + -1 + (-1)y[1] ≥ 0 ⇒ (UIncreasing(F(x[0], round(x[0]))), ≥)∧(-1)Bound + (-1)y[1] + x[1] ≥ 0∧-1 + (-1)y[1] + x[1] ≥ 0)
(9) (x[1] + -1 ≥ 0∧1 + y[1] + (-1)x[1] ≥ 0∧x[1] + -1 + (-1)y[1] ≥ 0 ⇒ (UIncreasing(F(x[0], round(x[0]))), ≥)∧(-1)Bound + (-1)y[1] + x[1] ≥ 0∧-1 + (-1)y[1] + x[1] ≥ 0)
(10) (1 + y[1] + (-1)x[1] ≥ 0∧x[1] + -1 + (-1)y[1] ≥ 0∧x[1] + -1 ≥ 0 ⇒ (-1)Bound + (-1)y[1] + x[1] ≥ 0∧-1 + (-1)y[1] + x[1] ≥ 0∧(UIncreasing(F(x[0], round(x[0]))), ≥))
(11) (y[1] + (-1)x[1] ≥ 0∧x[1] + (-1)y[1] ≥ 0∧x[1] ≥ 0 ⇒ 1 + (-1)Bound + (-1)y[1] + x[1] ≥ 0∧(-1)y[1] + x[1] ≥ 0∧(UIncreasing(F(x[0], round(x[0]))), ≥))
(12) ((-1)x[1] ≥ 0∧x[1] ≥ 0∧y[1] + x[1] ≥ 0 ⇒ 1 + (-1)Bound + x[1] ≥ 0∧x[1] ≥ 0∧(UIncreasing(F(x[0], round(x[0]))), ≥))
(13) (0 ≥ 0∧0 ≥ 0∧y[1] ≥ 0 ⇒ 1 + (-1)Bound ≥ 0∧0 ≥ 0∧(UIncreasing(F(x[0], round(x[0]))), ≥))
POL(-@z(x1, x2)) = x1 + (-1)x2
POL(round(x1)) = x1
POL(COND_F(x1, x2, x3)) = -1 + (-1)x3 + x2 + (-1)x1
POL(=@z(x1, x2)) = -1
POL(>=@z(x1, x2)) = -1
POL(TRUE) = -1
POL(&&(x1, x2)) = -1
POL(+@z(x1, x2)) = x1 + x2
POL(FALSE) = -1
POL(F(x1, x2)) = 1 + (-1)x2 + x1
POL(1@z) = 1
POL(undefined) = -1
F(x[1], y[1]) → COND_F(&&(>=@z(x[1], 1@z), =@z(y[1], -@z(x[1], 1@z))), x[1], y[1])
COND_F(TRUE, x[0], y[0]) → F(x[0], round(x[0]))
COND_F(TRUE, x[0], y[0]) → F(x[0], round(x[0]))
&&(FALSE, FALSE)1 ↔ FALSE1
+@z(x, 1@z)1 → round(x)1
x1 → round(x)1
+@z1 ↔
&&(TRUE, TRUE)1 ↔ TRUE1
&&(FALSE, TRUE)1 ↔ FALSE1
&&(TRUE, FALSE)1 ↔ FALSE1
↳ ITRS
↳ ITRStoIDPProof
↳ IDP
↳ UsableRulesProof
↳ IDP
↳ IDependencyGraphProof
↳ IDP
↳ IDPNonInfProof
↳ AND
↳ IDP
↳ IDependencyGraphProof
↳ IDP
z
round(x) → +@z(x, 1@z)
round(x) → x
round(x0)
Cond_f(TRUE, x0, x1)
f(x0, x1)
↳ ITRS
↳ ITRStoIDPProof
↳ IDP
↳ UsableRulesProof
↳ IDP
↳ IDependencyGraphProof
↳ IDP
↳ IDPNonInfProof
↳ AND
↳ IDP
↳ IDP
↳ IDependencyGraphProof
z
round(x) → +@z(x, 1@z)
round(x) → x
round(x0)
Cond_f(TRUE, x0, x1)
f(x0, x1)